Field of the Invention
The present invention relates to a synchronization technique of setting values that are saved in each information processing apparatus in an environment in which a plurality of information processing apparatuses is connected to one another via a network. In particular, the present invention relates to a synchronization technique in the case where an information processing apparatus capable of operating as a client is equipped with the function of a server.
Description of the Related Art
In recent years, there is a case where master data of setting values (setting information) of an information processing apparatus (client), such as a multi function peripheral (MFP), is managed unitedly by saving the master data in a server that is connected via a network. The setting value is synchronized between a client and a server and in the case where the value of the master data on the server is changed, the client is notified of the value after the change and the setting value within the client is also changed. Similarly, in the case where the setting value within the client is changed, the value of the master data on the server is also changed. Here, there exists a setting value (common setting value) that is synchronized in common with one anther among a plurality of clients. In this situation, in the case where the common setting value is changed in a certain client, the master data on the server and the setting value within all the clients that are the targets of synchronization are changed as a result. On the other hand, there exists a setting value (individual setting value) that is not synchronized with another client and in this situation, in the case where the individual setting value is changed in a certain client, only the setting value of the relevant client of the master data on the server is changed and the change is not reflected in the setting value of the other clients.
In the case where a user starts synchronization under the management of the server for various setting values of the client, processing to establish an initial connection (initial connection processing) between the server and the client is necessary. At the time of the initial connection processing, the client makes a request to the server for registration of all the setting values of the client. At this time, in the case where the “setting values of the client” relating to the registration request are already registered on the master data of the server, the server ignores the processing to register the “setting values of the client”.
Conventionally, already-determined server processing is performed on a client based on a specific setting value that is registered in a server. For example, Japanese Patent Laid-Open No. H11-119938 (1999) has disclosed a technique to specify a printing object to be printed based on a printing request from a client and to determine an action based on an attribute that is set in correspondence to the specified printing object. In this technique, the server determines an action in accordance with the attribute that is set for each object by having an attribute-dependent action definition table with which an action that should be performed in accordance with the attribute is associated and by referring to the table.
In the client-server system as described above, there is a case where a client device, such as an MFP, whose setting value can be easily changed by a common user, is caused to have the function of the server. In such a case where a specific client has both the function as the server and the function as the client, the “server” and the “client equipped with the function as the server” share the same value for a certain setting value as a result. Then, as to the setting value (shared setting value) that is shared with and referred to by the server and the client such as this, the change in the setting value in the client leads to the change in the setting value of the server. The shared setting value includes, for example, an IP address and a host name. Then, in the client equipped with the server function, it is possible for a user to easily change the IP address and the host name, and therefore, it may happen that the user unintentionally changes the setting value that is shared with the server. As a result of this, the setting value as the server is also changed, and therefore, there occurs such a problem that synchronization with all the clients including itself is no longer possible. As to this point, in the technique of Japanese Patent Laid-Open No. H11-119938 (1999), it is not possible to resolve the problem that occurs due to the change in the setting value of the server itself although the server processing depending on the attribute that is set based on the printing request from the client is performed.